# 简单构建脚本
Write-Host "开始构建..."

# 创建构建目录
if (!(Test-Path 'build')) { 
    New-Item -ItemType Directory -Path 'build' 
}

# 输出文件
$outputFile = 'build\game.js'

# 清空输出文件
'' | Out-File -FilePath $outputFile -Encoding UTF8

# 添加文件头
'// 像素生存者游戏 - 构建版本' | Out-File -FilePath $outputFile -Append -Encoding UTF8
'// 构建时间: ' + (Get-Date) | Out-File -FilePath $outputFile -Append -Encoding UTF8
'// ========================================' | Out-File -FilePath $outputFile -Append -Encoding UTF8
'' | Out-File -FilePath $outputFile -Append -Encoding UTF8

# 按依赖顺序合并文件
$files = @(
    'src\core\GameConfig.js',
    'src\core\SpriteCreator.js', 
    'src\utils\EffectSystem.js',
    'src\utils\TouchController.js',
    'src\systems\WeaponSystem.js',
    'src\systems\EnemySystem.js',
    'src\systems\UpgradeSystem.js',
    'src\systems\AchievementSystem.js',
    'src\ui\UISystem.js',
    'src\ui\MenuScenes.js',
    'src\core\PixelSurvivor.js'
)

foreach ($file in $files) {
    if (Test-Path $file) {
        Write-Host "合并: $file"
        "// === $file ===" | Out-File -FilePath $outputFile -Append -Encoding UTF8
        Get-Content $file | Out-File -FilePath $outputFile -Append -Encoding UTF8
        '' | Out-File -FilePath $outputFile -Append -Encoding UTF8
    } else {
        Write-Host "文件不存在: $file" -ForegroundColor Red
    }
}

# 添加游戏启动代码
'// === 游戏启动 ===' | Out-File -FilePath $outputFile -Append -Encoding UTF8
'const game = new Phaser.Game(GameConfig.config);' | Out-File -FilePath $outputFile -Append -Encoding UTF8

# 复制其他文件
if (Test-Path 'phaser.min.js') {
    Copy-Item 'phaser.min.js' 'build\'
    Write-Host "复制: phaser.min.js"
}

if (Test-Path 'index.html') {
    Copy-Item 'index.html' 'build\'
    Write-Host "复制: index.html"
}

Write-Host "构建完成！" -ForegroundColor Green
